*View this file in Notepad without wrapping*

Perlin Noise Lib v0.5.1 - Daniel McGrath

Uses:
    ExoticaX. Copyright of Chris Bensler. 
    Exotica. Copyright of Todd A. Riggins. 
    DirectX. Copyright the Microsoft Corp.
    Euphoria. Copyright of Rapid Deployment Software.

Files:
    Lib\PNL.e		- Main Library
    Lib\PLine.e		- Line Library
    Lib\PSound.e		- Sound Library
    Lib\PTexture.e	- Texture Library
    Lib\P3DTexture.e    - 3D Texture Library
    Lib\PSupport.e	- Support Library
    Lib\GrapTools.e	- Graphic Tool Library
    Lib\3DT.e           - 3DT File format support
    Lib\PConvert.ew     - BMP Conversion Library/Requires ExoticaX

    Docs\*              - Documentation for the Perlin Noise Library

    DirectX\*.ew		- ExoticaX Library subset
    Exotica1_7.dll	- Exotica DLL

    Combine.exw         - Demo for use of the Combine_RGB function(WIN32)
    Merge.exw           - Demo for use of the MergeImages function(WIN32)
    PLine.ex		- Demo for use of the Line Library(DOS32)
    PostColour.exw	- Demo for use of the PostColour function(WIN32)
    PSound.exw		- Demo for use of the Sound Library(WIN32)
    PTexture.exw		- Demo for use of the Texture Library(WIN32)
    PWave.ex            - Demo for using the Texture Library as animated lines(DOS32)
    P3DTexture.ex       - Demo for use of the 3D Texture Library(GEN)
    3DT_Replay.exw      - Demo for use of the 3DT Image format(WIN32)

    Test.ex             - Time tests were done with this file(see end of this file)(GEN)

|----------------------------------|
|Revisions from version 0.4.0/0.4.1|
|----------------------------------|

PNL.e         :- Minor optimisations to the Noise_Layer functions
              :- A few bug fixes, safety changes
		  :- Function renaming(removed legency name formatting)
              :- Added new setting. Set_NSO() to control the smoothing algo's
              :- Removed global vars. You must now use interface functions
PTexture.e    :- Safety check bug fixes in Create_Image()
              :- Bug fix with SAID restore in Create_Image()
              :- Uses memory instead of ExoticaX bmp's now (DOS32/Linux compat)
              :- Updated to new function naming format
P3DTexture.e  :- Safety check bug fixes in Create_3DImage()
              :- Bug fix with SAID restore in Create_Image()
              :- Uses memory instead of ExoticaX bmp's now (DOS32/Linux compat)
              :- Updated to new function naming format
3DT.e         :- Updated to new function naming format
              :- Uses memory instead of ExoticaX bmp's now (DOS32/Linux compat)
PSupport.e    :- Independant of ExoticaX(DOS32/Linux Compat)
              :- Changed Amp function, and added some new ones
PLine.e       :- Created the Line Library
PSound.e      :- Updated to new function naming format
              :- Updated to use NSO setting
PConvert.ew   :- Created the Conversion Library
Demo's        :- Demo's fixed/updated and a few new ones added


PLine.exw
~~~~~~~~~

Creates a Border Frame using Perlin Noise Line Library,
then creates 'Cables' inside. This is a DOS32 demo,
and runs in 800x600x4 mode(16 colours).

PSound.exw
~~~~~~~~~~

Since PNL doesn't have a library for playing the sound,
this demo displays it as a Wave image instead.
Final waveform image is stored in BMP\Sound.bmp
You will need a computer with DX8 and atleast able
to handle 320x240x16. Larger resolutions for larger
sizes are required.

PTexture.exw
~~~~~~~~~~~~

Shows you how to create a simple Texture using the PNL.
Final texture image is stored in BMP\Texture.bmp
You will need a computer with DX8 and atleast able
to handle 320x240x32. Larger resolutions for larger
sizes are required. If you can only handle 16bit
then see the PTexture.exw file, SetSizeAndScreen
procedure

PWave.exw
~~~~~~~~~

This shows how using you can use PTexture.e to create
animated waves (lines).
You will need a computer with DX8 and atleast able
to handle 320x240x32. Larger resolutions for larger
sizes are required. If you can only handle 16bit
then see the PWave.exw file, SetSizeAndScreen
procedure

P3DTexture.exw
~~~~~~~~~~~~~~

Shows you how to create and save a 3DT texture using
the PNL.
Final 3D texture image is stored in BMP\Texture.3DT
You will need a computer with DX8 and atleast able
to handle 320x240x32. Larger resolutions for larger
sizes are required. If you can only handle 16bit
then see the P3DTexture.exw file, SetSizeAndScreen
procedure

Combine.exw
~~~~~~~~~~~

Shows you how to combine 3 RGB channels from seperate
images into 1 bmp.
Final image is stored in BMP\Combine.bmp
You will need a computer with DX8 and atleast able
to handle 320x240x32. Larger resolutions for larger
sizes are required. If you can only handle 16bit
then see the Combine.exw file, SetSizeAndScreen
procedure

Merge.exw
~~~~~~~~~

This will show you how to Merge two images using
MergeImages and a Masking bmp.
Final image is stored in BMP\Merge.bmp
You will need a computer with DX8 and atleast able
to handle 320x240x32. Larger resolutions for larger
sizes are required. If you can only handle 16bit
then see the Merge.exw file, SetSizeAndScreen
procedure

PostColour.exw
~~~~~~~~~~~~~~

Demostrates the use of two function/procedures from
GrapTools.ew. First it loads BMP\DemoGrey.bmp then
Applies the MaxColourRange function to it.
Then it uses the PostPerlinColour procedure to
give the greyscale image colour. PostPerlinColour
is very useful when you wish to use a multi colour
function and don't want the 'layered' look.
Try it using the 'Electric' effects such as
PNL_Color_BlueElectric.
The final texture is stored in BMP\PostColour.bmp

3DT_Replay.exw
~~~~~~~~~~~~~~

Using the 3DT file format, it will play a 3D
texture as a animated texture. If you make a
grey scale 3DT file, try passing different
colour effects. The sample provided is a grey
scale, and gets played back with the Blue
Electric effect.

Test.exw
~~~~~~~~

Used for benchmarking purposes. DOS32 and WIN32 compatible.

base:
    PNL_IFS = 0
    PNL_NSO = 1
    PNL_NTO = 0
    PNL_SIZE_x = 500
    PNL_SIZE_y = 500
    Create_Image({32, 16, 8, 4, 2, 1}, {})

Below are the average times from my test machine

base:    Time = 30.0
NTO = 1: Time = 30.1
IFS = 1: Time = 30.5
NSO = 0: Time = 49.4
IFS = 1
NSO = 0
NTO = 1: Time = 52.4

Contact details:
    MSN - ice_fighter69@hotmail.com
    email - dm31@uow.edu.au
    Forums - http://scripts.cgispy.com/forums/forum.cgi?user=EuPNL